'use strict';
/**
 * Created by QianQi on 2017/3/9.
 */
$(function(){
    var oHideParams = $.getHideParams(),// <body> 下隐藏域键值对，name 为键
        oUrlParams = $.getUrlParams();// url 附加参数键值对
    var URLS = {
        d_tree: 'demo0.json'// 树数据源
    };
    var DATA = {
        tree: [
            {
                "groupname": "系统字典",
                "id": "001"
            }, {
                "groupname": "用户字典",
                "id": "002"
            }, {
                "groupname": "管理员",
                "id": "003"
            }
        ],
        staticTree: [
            {
                "groupname": "静态数据0",
                "id": "001"
            }, {
                "groupname": "静态数据1",
                "id": "002"
            }, {
                "groupname": "管理员",
                "id": "003"
            }
        ]
    };
    var jqDpTree = $('.js-dptree');
    var oDpZTreeApi;// 树组件 api

    // 顶部按钮点击事件
    var fTbtnsClick = function(){
        var jqThis = $(this);
        switch(jqThis.attr('data-type')){
            case 'resetData':// 切换树数据源
                oDpZTreeApi.resetTree(DATA.staticTree);
                break;
            case 'resetUrl':// 重新请求数据
                oDpZTreeApi.resetTree(URLS.d_tree, undefined, ['groupname', '系统管理员']);
                break;
            case 'select':// 选中节点
                oDpZTreeApi.setSel(['groupname', '管理员'], true);
                break;
            case 'getSelectedNodes':
                console.log('取值', oDpZTreeApi.getTreeObj().getSelectedNodes());
                break;
        }
    };

    function fOnChanged(selData){
        console.log('dpTree', selData);
    }

    /** =================== **/
    $('.js-tbtns').on('click', 'button', fTbtnsClick);// 顶部按钮点击事件
    oDpZTreeApi = jqDpTree.initDropTree({
        name: 'radTree',
        txtField: 'groupname',
        valField: 'id',
        //selParams: ['groupname','系统管理员'],// 初始化时点击符合条件的第一个节点
        mulChk: true,
        selParams: ['groupname', ['市外侨办', '系统管理员']],// 初始化时点击符合条件的第一个节点
        //initSelect: true,
        filter: {
            //hide:true // 复选树此属性无效
        },
        treeOpts: {
            url: URLS.d_tree// TODO 树数据源请求 url
            //selector:function(node){// 可选中的节点返回 true
            //    return node['level']>0;
            //}
        },
        callback: fOnChanged
    });
});